package com.ruoyi.admin.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;

/**
 * <p>
 * 文档分块表
 * </p>
 *
 * @author
 * @since 2025-01-09
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName(value = "llm_document_segments", autoResultMap = true)
@Schema(name = "LlmDocumentSegments对象", description = "文档分块表")
public class LlmDocumentSegments implements Serializable {

    private static final long serialVersionUID = 1L;

    @Schema(name = "主键ID")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @Schema(name = "分段名称")
    private String name;

    @Schema(name = "分块内容")
    private String content;

    @Schema(name = "文档ID")
    private String documentId;

    @Schema(name = "业务元数据")
    @TableField(value = "business_data")
    private String businessData;

    @Schema(name = "元素ID")
    private Long elementId;

    @Schema(name = "权限")
    private Integer permission = 0;

    @Schema(name = "知识库ID")
    private String datasetCode;

    @Schema(name = "关键词")
    private String keywords;

    @Schema(name = "分块单词数")
    private Integer wordCount;

    @Schema(name = "访问次数")
    private Integer hitCount = 0;

    @Schema(name = "启用状态")
    private Integer enabled;

    @Schema(name = "伪删除")
    private Integer ifDel = 0;

    @Schema(name = "创建人")
    private Long userId;

    @Schema(name = "创建时间")
    private String createTime;

    @Schema(name = "修改时间")
    private String updateTime;

    @Schema(name = "业务知识ID")
    private String knowledgeId;
    /**
     * 标签数据
     */
    @TableField("label_data")
    private String labelData;


}
